home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
utils
/
mwind132.lzh
/
mauswind
/
mauswind.ger
< prev
next >
Wrap
Text File
|
1994-11-01
|
36KB
|
646 lines
Anleitung zu Maus-Window V1.32 (Stand: 01.11.1994)
--------------------------------------------------
1. Was ist Maus-Window?
-----------------------
Wer schon einmal unter X11 gearbeitet hat, wird festgestellt haben, daß
immer das Fenster aktiv ist, das sich unter dem Mauszeiger befindet
(außer man hat den Window-Manager anders konfiguriert). Ein ähnliches
Verhalten des ATARI-GEM wäre in mancher Hinsicht wünschenswert. Leider
ist es nur möglich, dies durch ein "Toppen" des betreffenden Fensters
zu erreichen (sonst wären tiefgreifende Änderungen im Betriebssystem
notwendig). In diesem Zusammenhang fand ich einen Artikel in einer
Fachzeitschrift für den ST, der ein solches Programm zum automatischen
Toppen eines Fensters beschrieb. Leider war das Ergebnis nicht recht
überzeugend, da alle vorgestellten Methoden nicht zu vernachlässigende
Nachteile auswiesen. Also begann ich, ein eigenes Programm für diesen
Zweck zu erstellen. Das Ergebnis ist das hier vorliegende Programm Maus-
Window, das als Accessory in das Wurzelverzeichnis des Bootlaufwerks
kopiert werden muß. Der Betrieb als Programm ist auch möglich, hat aber
nur in einer Multitasking-Umgebung Sinn. Maus-Window läuft übrigens
ohne Probleme in beiden Modi unter MultiTOS, MagiC und Geneva.
Ist Maus-Window aktiv und der Mauszeiger befindet sich über einem nicht-
aktiven Fenster, wird dieses automatisch in den Vordergrund befördert.
Dazu wird die AES-Funktion appl_tplay benutzt, was eine 100%ig GEM-
konforme Lösung darstellt und mit allen "sauberen" Programmen
problemlos funktioniert (zu Problemfällen siehe Punkt 4).
Haben die AES eine Versionsnummer größer oder gleich 3.31, oder ist
WINX ab Version 2.1 installiert, benutzt Maus-Window den erweiterten
Funktionsumfang zum Bestimmen des "Eigentümers" des betreffenden
Fensters und schickt diesem dann die Meldung, daß das Fenster getoppt
werden soll.
Unter MultiTOS sorgt Maus-Window auf Wunsch auch dafür, daß der Prozeß
mit dem obersten Fenster eine höhere Priorität erhält, was etwas
flüssigeres Arbeiten ermöglicht.
Seit Version 1.20 ist Maus-Window bilingual, besitzt also deutsche und
englische Dialoge. Ist die Sprache des benutzten Rechners eine andere
als Deutsch, werden englische Dialoge dargestellt. Wer jedoch auch als
Deutscher die englischen Dialoge bekommen möchte, sollte sich einen
_AKP-Cookie anlegen (näheres zu dessen Format steht in der ST-Computer
04/93 auf Seite 89) oder unter MultiTOS in der Datei GEM.CNF die
Variable AE_LANG enstprechend umändern (Falcon-Besitzer können sich ja
sowieso durch diverse Programme die gewünschte Systemsprache im nicht-
flüchtigen RAM einstellen). Dies hat gegenüber einer entsprechenden
Option für Maus-Window den Vorteil, daß davon auch viele andere
Programme beeinflußt werden und ihre Texte nicht mehr in Deutsch
darstellen.
2. Die Einstellmöglichkeiten von Maus-Window
--------------------------------------------
Ruft man im Accessory-Betrieb den Eintrag von Maus-Window im Desk-Menü
auf, so erscheint ein Dialogfenster (was beim Betrieb als Programm nach
Anwahl des Menüpunkts "Parameter: einstellen..." geschieht). In der
"Parameter"-Box können mehrere Einstellungen vorgenommen und auf Wunsch
gespeichert werden, die das Verhalten von Maus-Window beeinflussen.
Alle Änderungen, die man in diesem Fenster vornimmt, treten sofort in
Kraft, der Button "OK" ist nur zur entgültigen Übernahme der
Einstellungen gedacht (der Dialog ist also wie das ATARI-Kontrollfeld
nicht-modal).
Folgende Optionen bietet Maus-Window:
"Maus-Window aktiv":
Legt fest, ob Maus-Window Fenster toppen soll oder nicht.
"Nur im Arbeitsbereich":
Ist diese Checkbox angekreuzt, werden Fenster nur dann nach vorne
geholt, wenn sich der Mauszeiger über dem Arbeitsbereich des Fensters
befindet (unter WINX < 2.1 könnten sonst versehentlich die
Rahmenelemente bedient werden, da Maus-Window bei AES-Versionen kleiner
3.31 ja einen Mausklick simuliert). Diese Option eignet sich auch
dafür, wenn man unter WINX >= 2.1 oder MultiTOS problemlos die
Fensterelemente hinten liegender Fenster erreichen will (ohne muss man
schon etwas Glück haben, daß das Fenster nicht vorher getoppt wird).
"'Verschwinden' verhinden":
Legt fest, ob darauf geachtet werden soll, daß keine Fenster nach vorne
geholt werden, die das momentan oberste komplett verdecken würden (oder
nur dessen Arbeitsbereich, je nach Einstellung von "nur im
Arbeitsbereich").
"Nicht während Bewegung toppen":
Möchte man nicht, daß Maus-Window auch während der Bewegung des
Mauszeigers Fenster "toppt", sollte man diese Checkbox ankreuzen.
"Wartezeit: ... ":
Diese Option sorgt dafür, daß ein Fenster erst dann getoppt wird, wenn
der Mauszeiger sich bereits eine bestimmte Zeit über diesem aufgehalten
oder stillgestanden hat (abhängig von der Einstellung der vorherigen
Option). Die Zeitspanne wird in ds (also 10tel Sekunden) angegeben und
kann mit den beiden Pfeilen im Bereich von 1-99 eingestellt werden
(Doppelklicks ändern den Wert in Zehnerschritten, auch die Cursortasten
können benutzt werden).
"Erst nach Mausbewegung toppen":
Auch wenn es im ersten Moment so den Anschein hat: Dies steht nicht im
Widerspruch zum vorletzten Absatz, aber leider ist mir keine bessere
Kurzbeschreibung des Sachverhalts eingefallen... Ist diese Option
aktiviert, wartet Maus-Window nach einem Wechsel des obersten Fensters
solange mit dem Toppen des nächsten, bis die Maus bewegt wurde. Dazu
ein Beispiel: Man hat in einem Programm zwei Fenster offen, der
Mauszeiger befindet sich über Fenster 1, das somit auch oben ist. Jetzt
aktiviert man per Tastatur Fenster 2 (z.B. durch CTRL-W). Wäre die
Option nicht aktiv, würde Maus-Window bei der nächsten Gelegenheit
wieder Fenster 1 toppen, was ja eigentlich nicht unbedingt erwünscht
ist. Auf diese Weise wird erreicht, daß Fenster, die per Tastatur
aktiviert wurden, auch wirklich erstmal oben bleiben. Auch beim
Backdrop eines Fensters unter MultiTOS oder WINX sorgt diese Option
dafür, daß man auch das erreicht, was man wollte... Es ist zweckmäßig,
zusätzlich "Nicht während Bewegung toppen" zu aktivieren.
"Fensterlose Prog. schützen"
Unter Multitasking-Umgebungen kann ein Fensterwechsel auch einen
Applikationswechsel zur Folge haben, wobei auch die Menüleiste
umgeschaltet wird. Mit der Option "Fensterlose Prog. schützen" kann nun
dafür gesorgt werden, daß Maus-Window nicht toppt, wenn die
Applikation, deren Menüleiste gerade aktiv ist, keine Fenster offen
hat. Der Sinn liegt darin, daß sonst ja die Menüleiste des Programms
weg wäre und man mangels Fenster nur noch durch Umschalten der
Applikation an das Programm käme. Wenn die AES es unterstützen, prüft
Maus-Window zusätzlich, ob das zu toppende Fenster einem Accessory
gehört, wenn ja, wird es doch getoppt, da ein Accessory keine eigene
Menüleiste hat. Es ist leider nicht möglich, auch zu prüfen, ob das
Programm, dem das zu toppende Fenster gehört, überhaupt eine Menüleiste
besitzt; daher können nur Accessories berücksichtigt werden.
"Fensterlose Prog. schützen" ist nur wählbar, wenn die AES mehr als
eine Applikation erlauben (Multitasking) und den erweiterten menu_bar-
Aufruf bereitstellen. Das Berücksichtigen der Acceossry-Fenster ist nur
möglich, wenn die AES den appl_search-Aufruf unterstützen. Beides ist
bei MultiTOS, MagiC und Geneva der Fall.
"Priorität für oberstes Fenster":
Diese Option ist nur wählbar, wenn unter MultiTOS gearbeitet wird (für
Experten: Maus-Window muß auch mit Root-Rechten laufen). Ist s